Simple Generation of Static Single-Assignment Form

نویسندگان

  • John Aycock
  • R. Nigel Horspool
چکیده

The static single-assignment (SSA) form of a program provides data flow information in a form which makes some compiler optimizations easy to perform. In this paper we present a new, simple method for converting to SSA form, which produces correct solutions for nonreducible control-flow graphs, and produces minimal solutions for reducible ones. Our timing results show that, despite its simplicity, our algorithm is competitive with more established techniques.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Using SSA Form in a Code Optimizer

We have constructed a simple yet powerful code optimizer that uses SSA form in concert with table-driven techniques for peephole optimization and code generation. This paper describes the problems with data dependences and 2-address instructions we encountered in combining these two techniques, and how we solved them.

متن کامل

A Formal Correctness Proof for Code Generation from SSA Form in Isabelle/HOL

Optimizations in compilers are the most error-prone phases in the compilation process. Since correct compilers are a vital precondition for software correctness, it is necessary to prove their correctness. We develop a formal semantics for static single assignment (SSA) intermediate representations and prove formally within the Isabelle/HOL theorem prover that a relatively simple form of code g...

متن کامل

An ASM Semantics for SSA Intermediate Representations

Static single assignment (SSA) form is the intermediate representation of choice in modern optimizing compilers for which no formal semantics has been stated yet. To prove such compilers correct, a formal semantics of SSA representations is necessary. In this paper, we show that abstract state machines (ASMs) are able to capture the imperative as well as the data flow-driven and therefore non-d...

متن کامل

A New Approach to Forth Native Code Generation

RAFTS is a framework for applying state of the art compiler technology to the compilation of Forth. The heart of RAFTS is a simple method for transforming Forth programs into data ow graphs and static single assignment form. Standard code generation and optimization techniques can be applied to programs in these forms. Speciically, RAFTS uses interprocedural register allocation to eliminate nea...

متن کامل

Comparison and evaluation of back-translation algorithms for static single assignment forms

The static single assignment form (SSA form) is a popular intermediate representation in compilers. In the SSA form, the definition of each variable textually appears only once in the program by using a hypothetical function called a -function. Because these functions are nonexecutable, it is necessary to delete the -functions and return the SSA form to the normal form before code generation. T...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2000